ヘッダーをスキップ
Oracle TimesTen In-Memory Database SQLリファレンス・ガイド
リリース7.0
E05176-01
  目次へ
目次
索引へ
索引

前へ
前へ
次へ
次へ
 

副問合せ

TimesTenでは、検索条件のSELECT文、CREATE VIEW文、DELETE文、UPDATE文またはUPDATEのSET句で、導出された表として副問合せがサポートされます。サポートされるのは、表の副問合せおよびスカラー副問合せです。行の副問合せはサポートされません。副問合せでは、HAVING句または結合表を使用して集計を指定できます。副問合せは相関も可能です。

説明

TimesTenでは、次のような特性を持つ問合せがサポートされています。

表の副問合せ:

スカラー副問合せ(スカラー副問合せは単一の値を返します):

SQL構文

[NOT] EXISTS | [NOT] IN (Subquery)

Expression {= | <> | > | >= | < | <= } [ANY | ALL] (Subquery)

Expression [NOT] IN (ValueList | Subquery)

次に、1件以上の未発送の発注を含む顧客リストの副問合せの例を示します。

例3.6
SELECT customers.name FROM customers 
WHERE EXISTS (SELECT 1 FROM orders  
    WHERE customers.id = orders.custid  
 

    AND orders.status = 'un-shipped');

例3.7

SELECT customers.name FROM customers

WHERE customers.id = ANY

(SELECT orders.custid FROM orders  
 

WHERE orders.status = 'un-shipped');

例3.8
SELECT customers.name FROM customers  
WHERE customers.id IN  
(SELECT orders.custid FROM orders  
 

WHERE orders.status = 'un-shipped');

例3.9

この例では、発注日と同じ日付に発送されたアイテムをリストします。

SELECT line_items.id FROM line_items

WHERE line_items.ship_date =  
(SELECT orders.order_date FROM orders  
 

WHERE orders.id = line_items.order_id);